Method and apparatus for updating user interface

ABSTRACT

A method and apparatus is provided for updating a User Interface (UI) by a Remote UI (RUI) client in an RUI system providing a UI to a user in a remote location. The RUI client receives a UI page from an RUI server, and renders the received UI page. Upon detecting a change in its capability, the RUI client stores a UI state of the UI page and requests the RUI server to update the UI page according to the changed capability. The RUI client receives a UI page updated according to the changed capability, from the RUI server, reflects the stored UI state in the updated UI page, and renders the UI state-reflected updated UI page.

This application claims priority under 35 U.S.C. §119(a) to a KoreanPatent Application filed in the Korean Intellectual Property Office onOct. 15, 2010 and assigned Serial No. 10-2010-0100827, the entiredisclosure of which is incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to a Remote User Interface (RUI)system providing User Interfaces (UIs) to users in remote locations, andmore particularly, to an apparatus and method for dynamically updatingUIs provided to users in an RUI system.

2. Description of the Related Art

Much study has been conducted to improve home network technologies byseveral industry standards organizations such as Digital Living NetworkAlliance (DLNA), Home Audio-Video Interoperability (HAVi), and UniversalPlug and Play (UPnP).

In a home network, Remote User Interface (RUI) technology may be used toallow one device to control functions of other devices. Briefly, the RUItechnology, based on a client-server architecture, enables an RUI Client(RUIC) to fetch one or more UIs from an RUI Server (RUIS) so that itsuser may control the RUIS using the UI on the RUIC.

FIG. 1 illustrates a method by which an RUIC controls an RUIS using anRUI page and control information provided by the RUIS according to theprior art.

Referring to FIG. 1, an RUIC 110 transmits its capability information toan RUIS 100 in step 101, and the RUIS 100 delivers an RUI page andcontent created according to the capability information received fromthe RUIC 110, to the RUIC 110 in step 102, and displays the content andUI page on a screen of the RUIC 110.

Generally, the capability information transmitted by the RUIC 110 mainlyincludes static values such as a screen resolution and deviceperformance. However, the device performance may include factors whichvary with time such as a battery state, a network state, a memorycapacity, detachable input devices, a Central Processing Unit (CPU), anda Graphic Processing Unit (GPU). Specifically, the CPU and GPU may havedifficulties in smoothly rendering high-definition UI pages if theirusage rates increase. However, there is no way to provide an RUIC withUI pages in which frequent changes in the performance of such a deviceis reflected.

Upon a change in the capability, a user may retransmit the changedcapability information and re-fetch an updated UI page. In this case,however, the UI user must re-consume the content from the beginning,inconveniencing the user.

SUMMARY OF THE INVENTION

An aspect of the present invention is to address at least theabove-mentioned problems and/or disadvantages and to provide at leastthe advantages described below. Accordingly, an aspect of theembodiments of the present invention is to provide an apparatus andmethod for dynamically updating a UI despite frequent change incapability of an RUIC in a process of controlling an RUIS by the RUIC.

In accordance with one aspect of the present invention, there isprovided a method for updating a User Interface (UI) by a Remote UI(RUI) client in an RUI system providing a UI. The method includesreceiving a UI page from an RUI server and rendering the received UIpage; storing a UI state of the UI page upon detecting a change in itscapability, and requesting the RUI server to update the UI pageaccording to the changed capability; and receiving a UI page updatedaccording to the changed capability, from the RUI server, reflecting thestored UI state in the updated UI page, and rendering the UIstate-reflected updated UI page.

In accordance with another aspect of the present invention, there isprovided a method for updating a User Interface (UI) by a Remote UI(RUI) server in an RUI system providing a UI. The method includes,receiving an update request for the transmitted UI page, aftertransmitting a UI page to an RUI client; determining whether there areitems to be updated in the UI page according to a changed capability ofthe RUI client, included in the update request; if there are items to beupdated, updating the UI page according to the changed capability of theRUI client, and transmitting the updated UI page to the RUI client; andif there are no items to be updated, transmitting an error code to theRUI client.

In accordance with yet another aspect of the present invention, there isprovided a method for updating a User Interface (UI) by a Remote UI(RUI) client in an RUI system providing a UI. The method includesreceiving a UI page from an RUI server and rendering the received UIpage; upon detecting a change in its capability, storing a UI state ofthe UI page and sending a request to update the UI page according to thechanged capability, to the RUI server along with the UI state; andreceiving from the RUI server a UI page, which is updated according tothe changed capability and in which the UI state is reflected, andrendering the received UI page.

In accordance with yet another aspect of the present invention, there isprovided a method for updating a User Interface (UI) by a Remote UI(RUI) server in an RUI system providing a UI. The method includes,receiving an update request for the transmitted UI page, aftertransmitting a UI page to an RUI client; determining whether there areitems to be updated in the UI page according to a changed capability ofthe RUI client, included in the update request; if there are items to beupdated, updating the UI page according to the changed capability of theRUI client, applying a UI state included in the update request to theupdated UI page, and transmitting the UI state-applied updated UI pageto the RUI client; and if there are no items to be updated, transmittingan error code to the RUI client.

In accordance with still another aspect of the present invention, thereis provided a Remote User Interface (RUI) client apparatus for updatinga User Interface (UI) in an RUI system providing a UI. The RUI clientincludes a web browser for receiving a UI page from an RUI server andrendering the received UI page; a capability change detector fordetecting a change in its capability; a UI state storage for storing aUI state of the UI page as the change in capability is detected by thecapability change detector; a UI request triggerer for requesting theRUI server to update the UI page according to the changed capability;and a UI state reflector for receiving a UI page updated according tothe changed capability, from the RUI server, reflecting the UI statestored in the UI state storage in the updated UI page, and transmittingthe UI state-reflected UI page to the web browser.

In accordance with still another aspect of the present invention, thereis provided a Remote User Interface (RUI) server apparatus for updatinga User Interface (UI) in an RUI system providing a UI. The RUI serverincludes a web server for receiving an update request for thetransmitted UI page, and sending a response to the update request to theRUI client, after transmitting a UI page to an RUI client; and a UIgenerator for determining whether there are items to be updated in theUI page according to a changed capability of the RUI client, included inthe update request, updating the UI page according to the changedcapability of the RUI client and transmitting the updated UI page to theweb browser if there are items to be updated, and transmitting an errorcode to the web server if there are no items to be updated.

In accordance with still another aspect of the present invention, thereis provided a Remote User Interface (RUI) client apparatus for updatinga User Interface (UI) in an RUI system providing a UI. The RUI clientincludes a web browser for receiving a UI page from an RUI server andrendering the received UI page; a capability change detector fordetecting a change in its capability; a UI state storage for storing aUI state of the UI page as the change in capability is detected by thecapability change detector; and a UI request triggerer for requestingthe RUI server to update the UI page according to the changedcapability. The web browser receives from the RUI server a UI page,which is updated according to the changed capability and in which the UIstate is reflected, and renders the received UI page.

In accordance with still another aspect of the present invention, thereis provided a Remote User Interface (RUI) server apparatus for updatinga User Interface (UI) in an RUI system providing a UI. The RUI serverincludes a web server for, receiving an update request for thetransmitted UI page, and sending a response to the update request to theRUI client, after transmitting a UI page to an RUI client; a UIgenerator for determining whether there are items to be updated in theUI page according to a changed capability of the RUI client, included inthe update request, updating the UI page according to the changedcapability of the RUI client if there are items to be updated, andgenerating an error code and transmitting the error code to the webserver if there are no items to be updated; and a UI state reflector forapplying a UI state included in the update request to the updated UIpage, and delivering the UI state-applied UI page to the web server.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects, features and advantages of certainembodiments of the present invention will be more apparent from thefollowing description taken in conjunction with the accompanyingdrawings, in which:

FIG. 1 illustrates how an RUIS delivers an RUI page to an RUIC accordingto the prior art;

FIGS. 2A to 2C illustrate dynamic UI update methods according to anembodiment of the present invention;

FIG. 3 illustrates a configuration of an RUI system according to anembodiment of the present invention;

FIGS. 4A and 4B illustrate a procedure in which a UI page is dynamicallyupdated upon a change in capability of an RUIC according to anembodiment of the present invention;

FIG. 5 is a flowchart illustrating an operation of an RUIC according toa first embodiment of the present invention;

FIG. 6 a flowchart illustrating an operation of an RUIS according to thefirst embodiment of the present invention;

FIG. 7 is a flowchart illustrating an operation of an RUIC according toa second embodiment of the present invention;

FIG. 8 a flowchart illustrating an operation of an RUIS according to thesecond embodiment of the present invention; and

FIG. 9 is a diagram illustrating an example of an application of thepresent invention.

Throughout the drawings, the same drawing reference numerals will beunderstood to refer to the same elements, features and structures.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE PRESENT INVENTION

Embodiments of the present invention will now be described in detailwith reference to the accompanying drawings. In the followingdescription, specific details such as detailed configuration andcomponents are provided to assist the overall understanding of theembodiments of the present invention. Therefore, it should be apparentto those skilled in the art that various changes and modifications ofthe embodiments described herein can be made without departing from thescope and spirit of the invention. Additionally, descriptions of wellknown functions and constructions are omitted for clarity andconciseness.

The present invention provides a method for dynamically updating a UIpage according to the variable capability of a RUIC. To accomplish this,upon detecting a change in its capability, an RUIC stores the current UIstate information, sends a re-request for a UI page to an RUIS, andrestores the UI state having been used by the user by reflecting the UIstate information in a UI page received from the RUIS, thereby providinga UI page matching the changed capability to the user.

FIGS. 2A to 2C illustrate dynamic UI update methods according to anembodiment of the present invention.

The proposed dynamic UI update methods may be classified into a methodof re-fetching the entire UI page matching a new capability and a methodof partially updating a UI page in accordance with the new capability.

The method of re-fetching the entire UI page may be classified againinto a method of storing UI state information in an RUIC and allowingthe RUIC to restore the finally updated UI using the stored UI stateinformation, and a method of sending, by an RUIC, UI state informationalong with a UI page request message when requesting a UI page from theRUIS.

FIG. 2A illustrates a method of storing UI state information in a RUICand allowing the RUIC to restore the finally updated UI using the UIstate information according to a first embodiment of the presentinvention.

Referring to FIG. 2A, an RUIC 210 sends a request for a UI page to anRUIS 200 and receives the UI page from the RUIS 200 in step 211.Thereafter, upon detecting a change in its capability information instep 212, the RUIC 210 stores the current UI state in step 213, andsends a re-request for a UI page to the RUIS 200 in step 214. The RUIC210 transmits the changed capability information.

Upon receiving the UI page re-request message, the RUIS 200 updates theUI page according to the changed capability information received fromthe RUIC 210 and transmits the updated UI page to the RUIC 210 in step215. Then, the RUIC 210 restores the UI by reflecting the stored UIstate information in the updated UI received from the RUIS 200 in step216.

FIG. 2B illustrates a method of transmitting, by an RUIC, UI stateinformation along with a UI page request message when requesting a UIpage from an RUIS, and re-fetching the entire UI page, which is updatedaccording to a new capability and in which the UI state is reflected,according to a second embodiment of the present invention.

Referring to FIG. 2B, the RUIC 210 sends a request for a UI page to theRUIS 200 and receives the UI page from the RUIS 200 in step 201.Thereafter, upon detecting a change in its capability information instep 202, the RUIC 210 stores the current UI state in step 203 and sendsa re-request for a UI page to the RUIS 200 in step 204. The RUIC 210transmits the changed capability information and the current UI stateinformation.

Upon receiving the UI page re-request, the RUIS 200 updates the UI pageaccording to the changed capability information received from the RUIC210 and reflects the UI state information of the RUIC 210 in the updatedUI page in step 205, and then transmits the updated UI page to the RUIC210 in step 206.

FIG. 2C illustrates a method of transmitting by an RUIS a UI pagepartially updated in accordance with a new capability of an RUIC, to theRUIC according to a third embodiment of the present invention, in whichelements of the UI page are updated using XMLHttpRequest (XHR).

Referring to FIG. 2C, the RUIC 210 sends a request for a UI page to theRUIS 200 and receives the UI page from the RUIS 200 in step 221.Thereafter, upon detecting a change in its capability information instep 222, the RUIC 210 stores the current UI state and makes a DocumentObject Model (DOM) tree in step 223, opens a socket to the RUIS 200 instep 224, and sends a request for a UI page using an HTTP command instep 225.

After updating the UI according to the changed capability, the RUIS 200transmits the updated UI to the RUIC 210 in step 226. Upon receiving theupdated UI, the RUIC 210 parses an eXtensible Markup Language (XML)document of the updated UI and makes a DOM tree to find out itsstructure in step 227, re-requests elements (e.g., a button image, orthe like) needed to be updated on an individual basis and fetches theelements from the RUIS 200 in step 228, and merges the stored UI statewith the updated elements in step 229.

FIG. 3 illustrates a configuration of an RUI system, according to anembodiment of the present invention.

Referring to FIG. 3, the RUI system includes an RUIS 300, which is adevice for providing an RUI(s), and an RUIC 310, which is a device forreceiving an RUI from the RUIS 300, displaying the received RUI on itsscreen, and controlling the RUIS 300 in a remote location throughinteraction with a user.

The RUIS 300 includes a web server 301 and a UI generator 302. The webserver 301 transmits UI data in the form of eXtensible HyperText MarkupLanguage (XHTML) or XML to the RUIC 310, and the UI generator 302provides a UI corresponding to the capability of the RUIC 310.

The RUIC 310 includes a web browser 311, a User Interface Control Point(UICP) 312, a UI state reflector 313, a UI state storage 314, a UIupdate request triggerer (or UI request triggerer) 315, and a capabilitychange detector 316.

The web browser 311 receives UI data in the form of XHTML and rendersthe received UI data. The UICP 312 is a logical point for performingcapability matching between the RUIS 300 and the RUIC 310 and making aconnection between them. While FIG. 3 shows that the UICP 312 issituated in the RUIC 310, the UICP 312 may be mounted in the RUIS 300,or may be situated outside the RUIS 300 and the RUIC 310. The UI statereflector 313 re-fetches the stored state information having been usedby the user, such as a cursor position, a play position and a screenconfiguration, and reflects the re-fetched state information in anupdated UI page received from the RUIS 300. The UI state storage 314stores the state information having been used by the user, such as acursor position, a play position and a screen configuration, uponrequest from the web browser 311. The UI request triggerer 315determines whether there is a need to update a UI, upon detecting achange in capability of the RUIC 310. If there is a need for the update,the UI request triggerer 315 delivers the updated capability to the UICP312, sends a request for an updated UI to the RUIS 300, and commands theweb browser 311 to store the current UI state. The capability changedetector 316 detects any changes in capability of the RUIC 310.

FIGS. 4A and 4B illustrate a procedure in which a UI page is dynamicallyupdated based on a change in capability of an RUIC according to a firstembodiment of the present invention.

Referring to FIGS. 4A and 4B, in steps 401 to 404, the web browser 311in the RUIC 310 receives a device description provided by the web server301 in the RUIS 300, and under control of the UICP 312, sends a requestfor a UI page to the web server 301 in the RUIS 300, receives the UIpage from the web server 301, and renders the received UI page.

In steps 405 and 406, the capability change detector 316 detects anychange in capability of the RUIC 310, and sends the detection results tothe UI request triggerer 315. Upon a change of device capability, the UIrequest triggerer 315 determines in step 407 whether to receive a new UIupdated to be compatible with the changed capability. If a determinationis made to update the UI, the UI request triggerer 315 commands the webbrowser 311 to store the current UI state information in the UI statestorage 314 in step 408. In steps 409 and 410, the UI state informationis read from the web browser 311 and stored in the UI state storage 314.

In step 411, the UI request triggerer 315 delivers the changedcapability information to the UICP 312 so that the UICP 312 mayre-request a UI matching the changed capability. In step 412, the UICP312 commands the web browser 311 to send a re-request for a UI page tothe RUIS 300 using the changed capability information, and this requestis forwarded to the web server 301 and the UI generator 302 in the RUIS300 in steps 413 and 414.

In step 415, the UI generator 302 determines its availability ofproviding a UI page agreeable with the capability, based on the newcapability information received from the RUIC 310. In steps 416 and 417,the UI generator 302 sends a response message corresponding to theavailability to the RUIC 310 through the web server 301. If it ispossible to provide an updated UI page, the UI generator 302 updates aUI page, and sends the updated UI together with the response message.However, if the update of a UI page is not required or is impossible,the UI generator 302 sends a proper HTTP error code as a responsemessage.

If it is not specified that the request is an update request for thereceived existing UI page, unnecessary process is performed in whichdespite unnecessity of the UI update, the RUIS 300 always sends a UIpage along with a response message and the web browser 311 in the RUIC310 re-renders the received UI page. To prevent this unnecessaryprocess, the RUIC 310 may record both the existing capabilityinformation and the new capability information in an HTTP messagerequesting a UI page, or the RUIC 310 may send only the new capabilityinformation along with the HTTP message, compare a received new UI pagewith the existing UI page being rendered, and newly render only thechanged part on the web browser 311 on a selective basis.

Upon receiving the response to the UI page re-request from the RUIS 300,the web browser 311 in the RUIC 310 parses the received response in step418, and if an updated UI page has been received, the web browser 311transmits the updated UI page to the UI state reflector 313 in step 419to reflect the stored UI state in it before rendering the UI page.

If the UI state is not reflected, as the state of the UI page havingbeen used thus far is completely reset, the user may view the UI pageagain starting from the initial screen. To prevent this, upon receivinga new UI page from the RUIS 300, the web browser 311 reflects the UIstate stored in the UI state storage 314 in the newly received UI pageby means of the UI state reflector 313, before rendering.

That is, in steps 420 and 421, the UI state reflector 313 reflects theUI state read from the UI state storage 314 in the updated UI receivedfrom the web browser 311 by merging them.

In steps 422 and 423, the updated UI page with UI state reflected in itis delivered from the UI state reflector 313 to the web browser 311, andthen rendered on the web browser 311. Additionally, if an error responseindicating that an update would be unnecessary or impossible is receivedin step 418, the web browser 311 maintains the current state withouttaking any action.

If an RUIS updates a UI page, reflects UI state information of an RUICin the updated UI page, and transmits the UI state-reflected updated UIpage to the RUIC as in the second embodiment of the present inventiondescribed in FIG. 2B, the UI state reflector 313 is located in the RUIS300. In this case, in steps 412 to 414, the UI state information may bedelivered to the RUIS 300. Then, the RUIC 310 does not perform steps 419to 422, and the web browser 311 in the RUIC 310 receives the UIstate-reflected updated UI page from the RUIS 300 and immediatelyrenders the received UI page in step 423.

FIG. 5 illustrates an operation of an RUIC according to the firstembodiment of the present invention.

Referring to FIG. 5, the RUIC checks for any change in capability instep 501. Upon detecting a change in capability in step 502, the RUICdetermines in step 503 whether to update a UI to match the changedcapability. If it is determined that the UI must be updated, the RUICnotifies a UICP of the changed device capability in step 504, and storesthe current UI state in step 505. In step 506, the RUIC sends are-request for a UI page to an RUIS using the changed device capabilityinformation. If there is a change in capability in step 502 or if thereis no need to update the UI in step 503, the RUIC returns to thebeginning.

The RUIC receives a response to the UI request in step 507, anddetermines in step 508 whether there is a need to update the UI page byparsing the received response. If it is determined that there is a needfor the update as an updated UI page is received as the response, theRUIC compares the updated UI page with the stored UI state in step 509,and determines in, step 510, whether there are any attributes to beadded or deleted.

If there attributes to be added or deleted, the RUIC handles thesevalues in step 511. After reflecting the stored UI state in the updatedUI page in step 512, the RUIC finally renders the UI state-reflected UIpage on a web browser in step 513, completing the update of the UI page.

If the response received in step 507 does not include an updated UI, theRUIC ends the update operation, determining in step 508 that there is noneed for the update.

FIG. 6 illustrates an operation of an RUIS according to the firstembodiment of the present invention.

Referring to FIG. 6, the RUIS receives a UI request message includingchanged capability information from an RUIC in step 601, and determinesin step 602 whether there are any items to be updated in the requestedUI based on the changed capability information. If there are items to beupdated, the RUIS updates the UI and generates a response messageincluding the updated UI in step 603, and sends the response message tothe RUIC in step 605. However, if there are no items to be updated or ifthe update is impossible, the RUIS generates an error response messageindicating that an update is unnecessary or impossible in step 604, andsends the error response message to the RUIC in step 605.

FIG. 7 illustrates an operation of an RUIC according to the secondembodiment of the present invention.

Referring to FIG. 7, the RUIC checks for any change in capability instep 701. Upon detecting a change in capability in step 702, the RUICdetermines, in step 703, whether to update the UI to match the changedcapability. If it is determined that the UI must be updated, the RUICnotifies a UICP of the changed device capability in step 704, and storesthe current UI state information in step 705. In step 706, the RUICsends a re-request for a UI page to an RUIS using the changed devicecapability information and the UI state information. If there is nochange in capability in step 702 or if there is no need to update the UIin step 703, the RUIC returns to the beginning of the processing.

The RUIC receives a UI state-reflected updated UI page as a response tothe UI request in step 707, and renders the received UI page on a webbrowser in step 708, completing the update of the UI page.

FIG. 8 illustrates an operation of an RUIS according to the secondembodiment of the present invention.

Referring to FIG. 8, the RUIS receives a UI request message includingchanged capability information and UI state information, from an RUIC instep 801, and determines in step 802 whether there are any items to beupdated in the requested UI. If there are items to be updated, the RUISupdates the UI based on the changed capability information in step 803,and compares a state of the UI to be updated with the UI stateinformation received from the RUIC in step 804. The RUIS determines instep 805 whether there are any attributes to be added or deleted, and ifthere are attributes to be added or deleted, the RUIS handles thesevalues in step 806, generates a response to the UI request message byreflecting the UI state received from the RUIC in the updated UI page instep 807, and sends the response to the RUIC in step 809. However, ifthere are no items to be updated or the update is impossible in step802, the RUIS generates an error response message indicating that anupdate would be unnecessary or impossible in step 808, and sends theerror response message to the RUIC in step 809.

FIG. 9 illustrates an example of an application of the presentinvention.

Referring to FIG. 9, if a Set-Top Box (STB) serves as an RUIS providingan XHTML-based RUI(s) and a cell phone serves as an RUIC, the cell phonereceives an RUI created in XHTML from the STB in step 901. If normalcontent consumption is a big burden due to a very low battery state ofthe cell phone during its use, conventionally, the user shouldre-request the UI page from the beginning to download a UI pagecompatible with the new capability, and, at this moment, the state ofthe UI page is initialized. For example, as the UI page is updated whilethe user is viewing a movie, the movie is played again from thebeginning. However, according to the embodiments of the presentinvention, the RUIC stores its UI state and then sends a re-request fora UI page to the RUIS along with the battery information in step 902,and upon receiving a new UI corresponding to the changed batteryinformation from the RUIS in step 903, the RUIC reflects the stored UIstate in the received UI page and renders the UI state-reflected UIpage, enabling the user to view the movie continuously.

As is apparent from the foregoing description, upon a change incapability of an RUIC in the RUI environment, the present inventiondynamically updates the UI page, thereby naturally or smoothly changingthe UI state so as to be unrecognizable by the user, and providing theuser with the UI that is updated in response to the change in devicecapability.

While the invention has been shown and described with reference tocertain embodiments thereof, it will be understood by those skilled inthe art that various changes in form and details may be made thereinwithout departing from the spirit and scope of the invention as definedby the appended claims and their equivalents.

What is claimed is:
 1. A method for updating a User Interface (UI) by aRemote UI (RUI) client in an RUI system providing a UI, comprising:receiving a UI page from an RUI server and rendering the received UIpage; storing a UI state of the UI page upon detecting a change incapability of the RUI client, and requesting the RUI server to updatethe UI page according to the changed capability; receiving a UI pageupdated according to the changed capability, from the RUI server;reflecting the stored UI state in the updated UI page by: comparing a UIstate of the received updated UI page with the stored UI state; and ifthere are attributes to be added or deleted as a result of thecomparison, adding or deleting the attributes in the received updated UIpage; and rendering the UI-state-reflected updated UI page, wherein thecapability of the RUI client is not changed by a user input.
 2. Themethod of claim 1, wherein requesting the RUI server comprises:transmitting the changed capability to the RUI server.
 3. The method ofclaim 1, wherein requesting the RUI server comprises: determiningwhether an update of the UI page is required according to the changedcapability, and requesting the RUI server to update the UI pageaccording to the changed capability if an update of the UI page isrequired.
 4. The method of claim 1, wherein changed capabilitycomprises: state information of at least one of a Central ProcessingUnit (CPU), a Graphic Processing Unit (GPU), a memory, a network and abattery of the RUI client.
 5. The method of claim 2, wherein requestingthe RUI server to update comprises: transmitting both of the changedcapability and an old capability, to the RUI server.
 6. The method ofclaim 1, wherein rendering comprises: parsing the updated UI page,re-requesting the RUI server to provide elements to be updated, andreceiving the re-requested elements; and merging the elements receivedfrom the RUI server with the stored UI state, and rendering the mergedUI page.
 7. A method for updating a User Interface (UI) by a Remote UI(RUI) server in an RUI system providing a UI, comprising: transmitting aUI page to an RUI client; receiving an update request for thetransmitted UI page, where the update request includes a changedcapability of the RUI client and where the update request wastransmitted by the RUI client; determining whether there are items to beupdated in the UI page according to the changed capability of the RUIclient; if there are items to be updated, updating the UI page accordingto the changed capability of the RUI client, and transmitting theupdated UI page to the RUI client wherein, upon receiving the updated UIpage transmitted by the RUI server, the RUI client compares a UI stateof the received updated UI page with a UI state stored by the RUI clientwhen the change in capability was detected and, if there are attributesto be added or deleted as a result of the comparison, adds or deletesthe attributes in the received updated UI page; and if there are noitems to be updated, transmitting an error code to the RUI client,wherein the capability of the RUI client is not changed by a user input.8. The method of claim 7, wherein changed capability comprises stateinformation of at least one of a Central Processing Unit (CPU), aGraphic Processing Unit (GPU), a memory, a network and a battery of theRUI client.
 9. The method of claim 7, further comprising: receiving anupdate request for elements of the UI page from the RUI client, updatingthe requested elements, and transmitting the updated elements to the RUIclient, after updating the UI page and transmitting the updated UI pageto the RUI client.
 10. A method for updating a User Interface (UI) by aRemote UI (RUI) client in an RUI system providing a UI, comprising:receiving a UI page from an RUI server and rendering the received UIpage; upon detecting a change in capability of the RUI client, storing aUI state of the UI page and sending a request to update the UI pageaccording to the changed capability, to the RUI server along with the UIstate; receiving from the RUI server a UI-state-reflected updated UIpage, wherein the RUI server had updated the UI page according to thechanged capability and reflected the UI state in the request in theupdated UI page by comparing a UI state of the updated UI page with theUI state in the request and, if there are attributes to be added ordeleted as a result of the comparison, adding or deleting the attributesin the updated UI page; and rendering the received UI-state-reflectedupdated UI page, wherein the capability of the RUI client is not changedby a user input.
 11. The method of claim 10, wherein requesting the RUIserver comprises: transmitting the changed capability to the RUI server.12. The method of claim 10, wherein requesting the RUI server comprises:determining whether an update the UI page is required according to thechanged capability, and requesting the RUI server to update the UI pageaccording to the changed capability if an update of the UI page isrequired.
 13. The method of claim 10, wherein changed capabilitycomprises: state information of at least one of a Central ProcessingUnit (CPU), a Graphic Processing Unit (GPU), a memory, a network and abattery of the RUI client.
 14. The method of claim 11, whereinrequesting the RUI server comprises: transmitting both of the changedcapability and a capability prior to a change thereof, to the RUIserver.
 15. A method for updating a User Interface (UI) by a Remote UI(RUI) server in an RUI system providing a UI, comprising: transmitting aUI page to an RUI client; receiving, from the RUI client, an updaterequest for the transmitted UI page, where the update request includes achanged capability of the RUI client and a UI state of the UI page whenthe RUI client detected the change in capability; determining whetherthere are items to be updated in the UI page according to the changedcapability of the RUI client; if there are items to be updated, updatingthe UI page according to the changed capability of the RUI client,applying the UI state included in the update request to the updated UIpage by comparing a UI state of the updated UI page with the UI stateincluded in the request and, if there are attributes to be added ordeleted as a result of the comparison, adding or deleting the attributesin the updated UI page, and transmitting the UI-state-applied updated UIpage to the RUI client; and if there are no items to be updated,transmitting an error code to the RUI client, wherein the capability ofthe RUI client is not changed by a user input.
 16. The method of claim15, wherein changed capability comprises state information of at leastone of a Central Processing Unit (CPU), a Graphic Processing Unit (GPU),a memory, a network and a battery of the RUI client.
 17. A Remote UserInterface (RUI) client apparatus for updating a User Interface (UI) inan RUI system providing a UI, comprising: a web browser configured forreceiving a UI page from an RUI server and rendering the received UIpage; a capability change detector configured for detecting a change incapability of the RUI client; a UI state storage configured for storinga UI state of the UI page when as the change in capability is detectedby the capability change detector; a UI request triggerer configured forrequesting the RUI server to update the UI page according to the changedcapability; and a UI state reflector configured for: receiving, from theRUI server, a UI page updated according to the changed capability;reflecting the UI state stored in the UI state storage in the updated UIpage by comparing a UI state of the received updated UI page with the UIstate stored in the UI state storage and, if there are attributes to beadded or deleted as a result of the comparison, adding or deleting theattributes in the received updated UI page; and transmitting theUI-state-reflected UI page to the web browser, wherein the capability ofthe RUI client is not changed by a user input.
 18. The apparatus ofclaim 17, wherein the UI request triggerer transmits the changedcapability to the RUI server when requesting the RUI server to updatethe UI page.
 19. The apparatus of claim 17, wherein the UI requesttriggerer determines whether an update the UI page is required accordingto the changed capability, and requests the RUI server to update the UIpage according to the changed capability if an update of the UI page isrequired.
 20. The apparatus of claim 17, wherein the capability changedetector detects a change in state information of at least one of aCentral Processing Unit (CPU), a Graphic Processing Unit (GPU), amemory, a network and a battery of the RUI client.
 21. The apparatus ofclaim 18, wherein the UI request triggerer transmits both of the changedcapability and a capability prior to a change thereof, to the RUIserver.
 22. A Remote User Interface (RUI) server apparatus for updatinga User Interface (UI) in an RUI system providing a UI, comprising: a webserver configured for receiving an update request from a RUI client fora UI page previously transmitted to the RUI client, and sending aresponse to the update request to the RUI client, where the updaterequest includes a changed capability of the RUI client and where theupdate request was transmitted by the RUI client after storing a UIstate of the UI page upon detecting the change in capability of the RUIclient; and a UI generator configured for determining whether there areitems to be updated in the UI page according to the changed capabilityof the RUI client included in the update request, updating the UI pageaccording to the changed capability of the RUI client and transmittingthe updated UI page to a web browser if there are items to be updated,and transmitting an error code to the web server if there are no itemsto be updated, wherein, upon receiving the updated UI page transmittedby the RUI server, the RUI client compares a UI state of the receivedupdated UI page with a UI state stored by the RUI client when the changein capability was detected and, if there are attributes to be added ordeleted as a result of the comparison, adding or deleting the attributesin the received updated UI page wherein the capability of the RUI clientis not changed by a user input.
 23. The apparatus of claim 22, whereinchanged capability comprises state information of at least one of aCentral Processing Unit (CPU), a Graphic Processing Unit (GPU), amemory, a network and a battery of the RUI client.
 24. A Remote UserInterface (RUI) client apparatus for updating a User Interface (UI) inan RUI system providing a UI, comprising: a web browser configured forreceiving a UI page from an RUI server and rendering the received UIpage; a capability change detector configured for detecting a change incapability of the RUI client; a UI state storage configured for storinga UI state of the UI page when the change in capability is detected bythe capability change detector; and a UI request triggerer configuredfor requesting the RUI server to update the UI page according to thechanged capability by sending a request including the stored UI stateand changed capability; wherein, upon receiving the request, the RUIserver updates the UI page according to the changed capability in therequest and reflects the UI state included in the request in the updatedUI page by comparing a UI state of the updated UI page with the UI stateincluded in the request and, if there are attributes to be added ordeleted as a result of the comparison, adding or deleting the attributesin the updated UI page, wherein the web browser receives theUI-state-reflected updated UI page from the RUI server and renders thereceived UI-state-reflected updated UI page, wherein the capability ofthe RUI client is not changed by a user input.
 25. The apparatus ofclaim 24, wherein the UI request triggerer determines whether an updatethe UI page is required according to the changed capability, andrequests the RUI server to update the UI page according to the changedcapability if an update of the UI page is required.
 26. The apparatus ofclaim 24, wherein the capability change detector detects a change instate information of at least one of a Central Processing Unit (CPU), aGraphic Processing Unit (GPU), a memory, a network and a battery of theRUI client.
 27. The apparatus of claim 24, wherein the UI requesttriggerer transmits both the changed capability and a capability priorto a change thereof, when requesting the RUI server to update the UIpage.
 28. A Remote User Interface (RUI) server apparatus for updating aUser Interface (UI) in an RUI system providing a UI, comprising: a webserver configured for receiving an update request from a RUI client fora UI page previously transmitted to the RUI client, and sending aresponse to the update request to the RUI client, where the updaterequest includes a changed capability of the RUI client and a UI stateof the UI page when the RUI client detected the changed capability; a UIgenerator configured for determining whether there are items to beupdated in the UI page according to the changed capability of the RUIclient included in the update request, updating the UI page according tothe changed capability of the RUI client if there are items to beupdated, and generating an error code and transmitting the error code tothe web server if there are no items to be updated; and a UI statereflector configured for applying the UI state included in the updaterequest to the updated UI page by comparing the UI state of the updatedUI page with the UI state included in the update request and, if thereare attributes to be added or deleted as a result of the comparison,adding or deleting the attributes in the updated UI page, and deliveringthe UI-state-applied UI page to the web server, wherein the capabilityof the RUI client is not changed by a user input.
 29. The apparatus ofclaim 28, wherein the changed capability comprises state information ofat least one of a Central Processing Unit (CPU), a Graphic ProcessingUnit (GPU), a memory, a network and a battery of the RUI client.